package listeners;

import db.ConnectionFactory;


import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import java.io.IOException;
import java.io.InputStream;

/**
 * Класс используется для инициализации всего приложения
 *
 * @author Andrey Murgo
 */
public class DBConfigManager implements ServletContextListener {
    @Override
    public void contextInitialized(ServletContextEvent servletContextEvent) {
        try {
            ServletContext servletContext = servletContextEvent.getServletContext();
            //получение InputStream по относительному пути файла
            InputStream inputStream = servletContext.getResourceAsStream("/WEB-INF/datasource-config.xml");
            // Считывание настроек из файла
            ConnectionFactory.getInstance().loadConfigFromXML(inputStream);
        } catch (IOException e) {
            // В этом случае будут использованы настройки по умолчанию
        }
    }

    @Override
    public void contextDestroyed(ServletContextEvent servletContextEvent) {
        //nothing to do
    }
}
